// 上传至oss的封装文件
import { ElMessage } from 'element-plus'
import { batchUploadImg } from '../components/Api/Upload'
// let basePath  = 'www.yourapi.com' // 你的服务器接口域名
/**
 * @description: 文件附件上传
 * file： 文件raw对象
 * successCallback： 成功的回调函数
 * errCallBack： 错误的回调函数
 * progressCallback： 上传进度的回调函数
 * dir: 上传阿里云目标文件夹 eg:图片image，视频video等
 */
const upload = async (file: any, successCallback = new Function(), errCallBack = new Function(), progressCallback = new Function()) => {
    let fd = new FormData()
    fd.append('files[]', file); // 相同字段名自动生成文件数组
    // 数据组装完成后，发送上传请求到阿里云oss
    var fig: any = {
        onUploadProgress: (progressEvent: any) => {
            var complete =
                ((progressEvent.loaded / progressEvent.total) * 100) | 0
            // console.log(complete)
            if (complete < 100) {
                // this.percentageNum = complete
                progressCallback({
                    percent: complete
                })
            }
            // complete为上传时的进度 0-100
        }
    }
    // 拿到结果后，做其他操作
    const res: any = await batchUploadImg(fd,fig)
    if (res.status === 200) {
        const obj={
            inch: res.data.data[0].path,
            name: res.data.data[0].name
        }
        successCallback(obj)
    } else {
        errCallBack(123)
    }
}
export default upload
